-
Notifications
You must be signed in to change notification settings - Fork 899
Move to .NET Standard 2.0 #1483
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Looks like I've got some more fighting with the CI servers to do before I can get everything building. 😢 |
appveyor.yml
Outdated
@@ -1,6 +1,6 @@ | |||
version: '{build}' | |||
|
|||
os: Visual Studio 2017 | |||
os: Visual Studio 2017 Preview |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this only build with Preview? This would hurt contributions. Bigger wall for first timers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just need 17.3 now
Being that 2.0 is still preview should this wait till 2.0 is out? |
@Zoxive Yes, this does currently require the preview, but the final release is going to be here very soon. |
9d43bcd
to
2cce832
Compare
6fccd7e
to
5379d6a
Compare
And now the CI builds are green! Travis was failing because of SourceLink, though I'm not entirely sure why. Since we don't actually care about the artifacts from Travis, I went ahead and prevented it from running on Travis for now. @ethomson This should be ready to go now! |
Just a heads up: this won't be "fully" NET Standard 2.0 supported due to the use of |
Does this mean you will be dropping support for Many libraries strive to do the opposite, i.e they start by targeting the latest |
Supporting Custom marshaling was added back to |
@bording - makes sense. If this is released as a new major version (breaking change) then I can't imagine this would be much of a problem for people - because those that can't afford to lose compatibility would simply not upgrade. Not sure what branching strategy is used here (I typically use GitFlow), but I assume there is facility to release a hotfix for the older |
@dazinator The |
Seeing as we haven't done a release at all with any .NET Core support, I dont feel a significant obligation to 1.3 users. Am I wrong in this thinking? |
Nope - you are quite correct, it was only ever pre-release functionality. I had assumed it was in a stable release but I was mistaken ;-) |
However it would be a shame to lose support for netcoreapp < 2.0.0 though. For example, I am looking at using |
Let me re-phrase that. I would like to support people who are stuck using the older Anyway it sounds like a tradeoff for me to deal with, not anything that should impact you! |
I wonder how many people this would actually be, considering that the 2.0 SDK/CLI can also build netcoreapp1.0 as well, there's no real reason to stay on the 1.0 CLI. |
You would think. Sadly there are still reasons to remain on older CLI's. Having been using the The way you "lock" a solution to an older CLI version is by adding a I bet there are quite a few environments out there that also lock their tools down via a IMHO The decision my MS to automatically bind |
Yes, the libgit2sharp .NET Standard 1.3 package has only ever been a pre-release. There was a similar discussion to this when NLog moved to 2.0, for what it's worth. NET Standard 2.0 is still new enough that it's only really fully implemented on the very latest versions of ... everything. The .NET team is constantly repeating that "the lower the version [you support], the more platforms you can run on." But I can't find any reference at all which documents any actual hardware or OS platforms that still support only .NET Standard 1.x and not 2.0 -- even Xamarin.iOS and Xamarin.Android and UWP have added support for .NET Standard 2.0 In other words, if you don't like the ugliness required to support to lower versions, it seems to me that the only reason to stay on the lower API version would be to support old versions of tools ... but since you've never supported them before, it seems a moot point. Disclaimer: All of my stuff has historically been on full Windows-only desktop framework, and most of it is migrating to .NET Standard 2.0 -- I just want something supporting any version of the .NET Standard to be released, so I can move to Standard so people stop asking me if my projects are abandoned... 😊 |
Right. I'm reasonably convinced that 2.0 is probably the right version to support. I'll 👀 this and merge it soon. Thanks for your patience. |
🎉 Thanks for this, this seems like a really nice improvement and I'm really pleased to see some of the simplifications going on here. Sorry it took so long to review it, but ⚡️ |
Hi all, When do you expect to release the .netstandard 2.0 support? :) |
Move to .NET Standard 2.0
@ethomson Here's my work to move us to using .NET Standard 2.0. I was able to clean up and simplify a lot of stuff because 2.0 is the first reasonable version to target.